import Vue from "vue";
import App from "./App.vue";
import router from "./router";
import store from "./store";
import {
  Container,
  Message,
  Main,
  Aside,
  Menu,
  Submenu,
  Header,
  Dropdown,
  Row,
  Button,
  DropdownMenu,
  MenuItem,
  DropdownItem,
  MenuItemGroup,
  Table,
  Input,
  TableColumn,
  Avatar,
  DatePicker,
  Pagination,
  Select,
  Option,
  Tag,
  Dialog,
  Loading,
} from "element-ui";

import * as API from "@/api";

import Carousel3d from "vue-carousel-3d";
Vue.use(Carousel3d);
Vue.use(Container);
Vue.use(Main);
Vue.use(Aside);
Vue.use(Menu);
Vue.use(Submenu);
Vue.use(Header);
Vue.use(Dropdown);
Vue.use(DropdownMenu);
Vue.use(MenuItem);
Vue.use(DropdownItem);
Vue.use(MenuItemGroup);
Vue.use(Table);
Vue.use(TableColumn);
Vue.use(Row);
Vue.use(Button);
Vue.use(Input);
Vue.use(Avatar);
Vue.use(DatePicker);
Vue.use(Pagination);
Vue.use(Select);
Vue.use(Option);
Vue.use(Tag);
Vue.use(Dialog);
Vue.use(Loading);

Vue.prototype.$message = Message;
Vue.config.productionTip = false;

new Vue({
  router,
  beforeCreate() {
    Vue.prototype.$API = API;
  },
  store,
  render: (h) => h(App),
}).$mount("#app");
